// 蜂窝蜜造平台生成代码，如手工更改，请添加到 .beeignore 忽略生成

package com.fowo.api.model.accessories;

import com.fowo.api.common.annotaion.DataObjectType;
import com.fowo.api.common.meta.MetaDataObject;
import com.fowo.api.common.meta.MetaDataObjects;
import com.fowo.api.common.model.PageSearch;
import com.fowo.api.common.mybatis.helper.PageSearchHelper;
import com.fowo.api.common.util.ListUtils;
import com.fowo.api.entity.Accessories;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;

@DataObjectType(Accessories.class)
@Setter
@Getter
public class AccessoriesSearchParamPo extends PageSearch {

  private static MetaDataObject metaDataObject;

  @Override
  public void applySqlSegments() {
    if (metaDataObject == null) {
      metaDataObject =
        ListUtils.find(
          MetaDataObjects.getObjects(),
          o -> "Accessories".equals(o.getName())
        );
    }
    PageSearchHelper.fillSqlSegments(this, metaDataObject);
  }

  @Override
  public void initFinal() {
    super.initFinal();
    applySqlSegments();
  }

  /**
   * 获取关联字段的查询表别名信息
   */
  @Override
  public Map<String, String> getJoinFieldTableAliasMap() {
    Map<String, String> map = new HashMap<>();
    map.put("group", "pg");
    map.put("classify", "c");
    map.put("brand", "b");
    map.put("developer", "su");
    map.put("principal", "su2");
    map.put("buyer", "su3");
    map.put("defaultWarehouse", "w");
    return map;
  }

  @Override
  public Map<String, OptionalJoinField> getOptionalJoinFields() {
    Map<String, OptionalJoinField> map = new HashMap<>();

    return map;
  }

  /**
   * 是否有 图片
   */
  private Boolean picUrl;

  /**
   * 品名(模糊搜索)
   */
  private String name;

  /**
   * 品名 比较(eq)
   */
  private String nameEq;
  /**
   * 品名 比较(neq)
   */
  private String nameNeq;
  /**
   * 品名 比较(gt)
   */
  private String nameGt;
  /**
   * 品名 比较(gte)
   */
  private String nameGte;
  /**
   * 品名 比较(lt)
   */
  private String nameLt;
  /**
   * 品名 比较(lte)
   */
  private String nameLte;
  /**
   * 品名 比较(contains)
   */
  private String nameContains;
  /**
   * 品名 比较(notcontains)
   */
  private String nameNotcontains;
  /**
   * 品名 比较(startswith)
   */
  private String nameStartswith;
  /**
   * 品名 比较(endswith)
   */
  private String nameEndswith;
  /**
   * 品名 比较(isnull)
   */
  private Boolean nameIsnull;
  /**
   * 品名 比较(isnotnull)
   */
  private Boolean nameIsnotnull;

  /**
   * 品名(精确搜索)
   */
  private List<String> nameInList;

  /**
   * SKU(模糊搜索)
   */
  private String sku;

  /**
   * SKU 比较(eq)
   */
  private String skuEq;
  /**
   * SKU 比较(neq)
   */
  private String skuNeq;
  /**
   * SKU 比较(gt)
   */
  private String skuGt;
  /**
   * SKU 比较(gte)
   */
  private String skuGte;
  /**
   * SKU 比较(lt)
   */
  private String skuLt;
  /**
   * SKU 比较(lte)
   */
  private String skuLte;
  /**
   * SKU 比较(contains)
   */
  private String skuContains;
  /**
   * SKU 比较(notcontains)
   */
  private String skuNotcontains;
  /**
   * SKU 比较(startswith)
   */
  private String skuStartswith;
  /**
   * SKU 比较(endswith)
   */
  private String skuEndswith;
  /**
   * SKU 比较(isnull)
   */
  private Boolean skuIsnull;
  /**
   * SKU 比较(isnotnull)
   */
  private Boolean skuIsnotnull;

  /**
   * SKU(精确搜索)
   */
  private List<String> skuInList;

  /**
   * 产品描述(模糊搜索)
   */
  private String productDescription;

  /**
   * 产品描述 比较(eq)
   */
  private String productDescriptionEq;
  /**
   * 产品描述 比较(neq)
   */
  private String productDescriptionNeq;
  /**
   * 产品描述 比较(gt)
   */
  private String productDescriptionGt;
  /**
   * 产品描述 比较(gte)
   */
  private String productDescriptionGte;
  /**
   * 产品描述 比较(lt)
   */
  private String productDescriptionLt;
  /**
   * 产品描述 比较(lte)
   */
  private String productDescriptionLte;
  /**
   * 产品描述 比较(contains)
   */
  private String productDescriptionContains;
  /**
   * 产品描述 比较(notcontains)
   */
  private String productDescriptionNotcontains;
  /**
   * 产品描述 比较(startswith)
   */
  private String productDescriptionStartswith;
  /**
   * 产品描述 比较(endswith)
   */
  private String productDescriptionEndswith;
  /**
   * 产品描述 比较(isnull)
   */
  private Boolean productDescriptionIsnull;
  /**
   * 产品描述 比较(isnotnull)
   */
  private Boolean productDescriptionIsnotnull;

  /**
   * 分组
   */
  private Long group;

  /**
   * 分组 比较(eq)
   */
  private Long groupEq;
  /**
   * 分组 比较(neq)
   */
  private Long groupNeq;
  /**
   * 分组 比较(gt)
   */
  private Long groupGt;
  /**
   * 分组 比较(gte)
   */
  private Long groupGte;
  /**
   * 分组 比较(lt)
   */
  private Long groupLt;
  /**
   * 分组 比较(lte)
   */
  private Long groupLte;
  /**
   * 分组 比较(contains)
   */
  private Long groupContains;
  /**
   * 分组 比较(notcontains)
   */
  private Long groupNotcontains;
  /**
   * 分组 比较(startswith)
   */
  private Long groupStartswith;
  /**
   * 分组 比较(endswith)
   */
  private Long groupEndswith;
  /**
   * 分组 比较(isnull)
   */
  private Boolean groupIsnull;
  /**
   * 分组 比较(isnotnull)
   */
  private Boolean groupIsnotnull;
  /**
   * 分组的名称 比较(eq)
   */
  private String groupNameEq;
  /**
   * 分组的名称 比较(neq)
   */
  private String groupNameNeq;
  /**
   * 分组的名称 比较(gt)
   */
  private String groupNameGt;
  /**
   * 分组的名称 比较(gte)
   */
  private String groupNameGte;
  /**
   * 分组的名称 比较(lt)
   */
  private String groupNameLt;
  /**
   * 分组的名称 比较(lte)
   */
  private String groupNameLte;
  /**
   * 分组的名称 比较(contains)
   */
  private String groupNameContains;
  /**
   * 分组的名称 比较(notcontains)
   */
  private String groupNameNotcontains;
  /**
   * 分组的名称 比较(startswith)
   */
  private String groupNameStartswith;
  /**
   * 分组的名称 比较(endswith)
   */
  private String groupNameEndswith;
  /**
   * 分组的名称 比较(isnull)
   */
  private Boolean groupNameIsnull;
  /**
   * 分组的名称 比较(isnotnull)
   */
  private Boolean groupNameIsnotnull;

  /**
   * 分组(范围搜索)
   */
  private List<Long> groupInList;

  /**
   * 状态
   */
  private String salesStatus;

  /**
   * 状态 比较(eq)
   */
  private String salesStatusEq;
  /**
   * 状态 比较(neq)
   */
  private String salesStatusNeq;
  /**
   * 状态 比较(gt)
   */
  private String salesStatusGt;
  /**
   * 状态 比较(gte)
   */
  private String salesStatusGte;
  /**
   * 状态 比较(lt)
   */
  private String salesStatusLt;
  /**
   * 状态 比较(lte)
   */
  private String salesStatusLte;
  /**
   * 状态 比较(contains)
   */
  private String salesStatusContains;
  /**
   * 状态 比较(notcontains)
   */
  private String salesStatusNotcontains;
  /**
   * 状态 比较(startswith)
   */
  private String salesStatusStartswith;
  /**
   * 状态 比较(endswith)
   */
  private String salesStatusEndswith;
  /**
   * 状态 比较(isnull)
   */
  private Boolean salesStatusIsnull;
  /**
   * 状态 比较(isnotnull)
   */
  private Boolean salesStatusIsnotnull;

  /**
   * 状态(精确搜索)
   */
  private List<String> salesStatusInList;

  /**
   * 分类
   */
  private Long classify;

  /**
   * 分类 比较(eq)
   */
  private Long classifyEq;
  /**
   * 分类 比较(neq)
   */
  private Long classifyNeq;
  /**
   * 分类 比较(gt)
   */
  private Long classifyGt;
  /**
   * 分类 比较(gte)
   */
  private Long classifyGte;
  /**
   * 分类 比较(lt)
   */
  private Long classifyLt;
  /**
   * 分类 比较(lte)
   */
  private Long classifyLte;
  /**
   * 分类 比较(contains)
   */
  private Long classifyContains;
  /**
   * 分类 比较(notcontains)
   */
  private Long classifyNotcontains;
  /**
   * 分类 比较(startswith)
   */
  private Long classifyStartswith;
  /**
   * 分类 比较(endswith)
   */
  private Long classifyEndswith;
  /**
   * 分类 比较(isnull)
   */
  private Boolean classifyIsnull;
  /**
   * 分类 比较(isnotnull)
   */
  private Boolean classifyIsnotnull;
  /**
   * 分类的分类名称 比较(eq)
   */
  private String classifyNameEq;
  /**
   * 分类的分类名称 比较(neq)
   */
  private String classifyNameNeq;
  /**
   * 分类的分类名称 比较(gt)
   */
  private String classifyNameGt;
  /**
   * 分类的分类名称 比较(gte)
   */
  private String classifyNameGte;
  /**
   * 分类的分类名称 比较(lt)
   */
  private String classifyNameLt;
  /**
   * 分类的分类名称 比较(lte)
   */
  private String classifyNameLte;
  /**
   * 分类的分类名称 比较(contains)
   */
  private String classifyNameContains;
  /**
   * 分类的分类名称 比较(notcontains)
   */
  private String classifyNameNotcontains;
  /**
   * 分类的分类名称 比较(startswith)
   */
  private String classifyNameStartswith;
  /**
   * 分类的分类名称 比较(endswith)
   */
  private String classifyNameEndswith;
  /**
   * 分类的分类名称 比较(isnull)
   */
  private Boolean classifyNameIsnull;
  /**
   * 分类的分类名称 比较(isnotnull)
   */
  private Boolean classifyNameIsnotnull;

  /**
   * 分类(范围搜索)
   */
  private List<Long> classifyInList;

  /**
   * 品牌
   */
  private Long brand;

  /**
   * 品牌 比较(eq)
   */
  private Long brandEq;
  /**
   * 品牌 比较(neq)
   */
  private Long brandNeq;
  /**
   * 品牌 比较(gt)
   */
  private Long brandGt;
  /**
   * 品牌 比较(gte)
   */
  private Long brandGte;
  /**
   * 品牌 比较(lt)
   */
  private Long brandLt;
  /**
   * 品牌 比较(lte)
   */
  private Long brandLte;
  /**
   * 品牌 比较(contains)
   */
  private Long brandContains;
  /**
   * 品牌 比较(notcontains)
   */
  private Long brandNotcontains;
  /**
   * 品牌 比较(startswith)
   */
  private Long brandStartswith;
  /**
   * 品牌 比较(endswith)
   */
  private Long brandEndswith;
  /**
   * 品牌 比较(isnull)
   */
  private Boolean brandIsnull;
  /**
   * 品牌 比较(isnotnull)
   */
  private Boolean brandIsnotnull;
  /**
   * 品牌的名称 比较(eq)
   */
  private String brandNameEq;
  /**
   * 品牌的名称 比较(neq)
   */
  private String brandNameNeq;
  /**
   * 品牌的名称 比较(gt)
   */
  private String brandNameGt;
  /**
   * 品牌的名称 比较(gte)
   */
  private String brandNameGte;
  /**
   * 品牌的名称 比较(lt)
   */
  private String brandNameLt;
  /**
   * 品牌的名称 比较(lte)
   */
  private String brandNameLte;
  /**
   * 品牌的名称 比较(contains)
   */
  private String brandNameContains;
  /**
   * 品牌的名称 比较(notcontains)
   */
  private String brandNameNotcontains;
  /**
   * 品牌的名称 比较(startswith)
   */
  private String brandNameStartswith;
  /**
   * 品牌的名称 比较(endswith)
   */
  private String brandNameEndswith;
  /**
   * 品牌的名称 比较(isnull)
   */
  private Boolean brandNameIsnull;
  /**
   * 品牌的名称 比较(isnotnull)
   */
  private Boolean brandNameIsnotnull;

  /**
   * 品牌(范围搜索)
   */
  private List<Long> brandInList;

  /**
   * 开发人
   */
  private Long developer;

  /**
   * 开发人 比较(eq)
   */
  private Long developerEq;
  /**
   * 开发人 比较(neq)
   */
  private Long developerNeq;
  /**
   * 开发人 比较(gt)
   */
  private Long developerGt;
  /**
   * 开发人 比较(gte)
   */
  private Long developerGte;
  /**
   * 开发人 比较(lt)
   */
  private Long developerLt;
  /**
   * 开发人 比较(lte)
   */
  private Long developerLte;
  /**
   * 开发人 比较(contains)
   */
  private Long developerContains;
  /**
   * 开发人 比较(notcontains)
   */
  private Long developerNotcontains;
  /**
   * 开发人 比较(startswith)
   */
  private Long developerStartswith;
  /**
   * 开发人 比较(endswith)
   */
  private Long developerEndswith;
  /**
   * 开发人 比较(isnull)
   */
  private Boolean developerIsnull;
  /**
   * 开发人 比较(isnotnull)
   */
  private Boolean developerIsnotnull;
  /**
   * 开发人的显示用户名 比较(eq)
   */
  private String developerNameEq;
  /**
   * 开发人的显示用户名 比较(neq)
   */
  private String developerNameNeq;
  /**
   * 开发人的显示用户名 比较(gt)
   */
  private String developerNameGt;
  /**
   * 开发人的显示用户名 比较(gte)
   */
  private String developerNameGte;
  /**
   * 开发人的显示用户名 比较(lt)
   */
  private String developerNameLt;
  /**
   * 开发人的显示用户名 比较(lte)
   */
  private String developerNameLte;
  /**
   * 开发人的显示用户名 比较(contains)
   */
  private String developerNameContains;
  /**
   * 开发人的显示用户名 比较(notcontains)
   */
  private String developerNameNotcontains;
  /**
   * 开发人的显示用户名 比较(startswith)
   */
  private String developerNameStartswith;
  /**
   * 开发人的显示用户名 比较(endswith)
   */
  private String developerNameEndswith;
  /**
   * 开发人的显示用户名 比较(isnull)
   */
  private Boolean developerNameIsnull;
  /**
   * 开发人的显示用户名 比较(isnotnull)
   */
  private Boolean developerNameIsnotnull;

  /**
   * 开发人(范围搜索)
   */
  private List<Long> developerInList;

  /**
   * 产品负责人
   */
  private Long principal;

  /**
   * 产品负责人 比较(eq)
   */
  private Long principalEq;
  /**
   * 产品负责人 比较(neq)
   */
  private Long principalNeq;
  /**
   * 产品负责人 比较(gt)
   */
  private Long principalGt;
  /**
   * 产品负责人 比较(gte)
   */
  private Long principalGte;
  /**
   * 产品负责人 比较(lt)
   */
  private Long principalLt;
  /**
   * 产品负责人 比较(lte)
   */
  private Long principalLte;
  /**
   * 产品负责人 比较(contains)
   */
  private Long principalContains;
  /**
   * 产品负责人 比较(notcontains)
   */
  private Long principalNotcontains;
  /**
   * 产品负责人 比较(startswith)
   */
  private Long principalStartswith;
  /**
   * 产品负责人 比较(endswith)
   */
  private Long principalEndswith;
  /**
   * 产品负责人 比较(isnull)
   */
  private Boolean principalIsnull;
  /**
   * 产品负责人 比较(isnotnull)
   */
  private Boolean principalIsnotnull;
  /**
   * 产品负责人的显示用户名 比较(eq)
   */
  private String principalNameEq;
  /**
   * 产品负责人的显示用户名 比较(neq)
   */
  private String principalNameNeq;
  /**
   * 产品负责人的显示用户名 比较(gt)
   */
  private String principalNameGt;
  /**
   * 产品负责人的显示用户名 比较(gte)
   */
  private String principalNameGte;
  /**
   * 产品负责人的显示用户名 比较(lt)
   */
  private String principalNameLt;
  /**
   * 产品负责人的显示用户名 比较(lte)
   */
  private String principalNameLte;
  /**
   * 产品负责人的显示用户名 比较(contains)
   */
  private String principalNameContains;
  /**
   * 产品负责人的显示用户名 比较(notcontains)
   */
  private String principalNameNotcontains;
  /**
   * 产品负责人的显示用户名 比较(startswith)
   */
  private String principalNameStartswith;
  /**
   * 产品负责人的显示用户名 比较(endswith)
   */
  private String principalNameEndswith;
  /**
   * 产品负责人的显示用户名 比较(isnull)
   */
  private Boolean principalNameIsnull;
  /**
   * 产品负责人的显示用户名 比较(isnotnull)
   */
  private Boolean principalNameIsnotnull;

  /**
   * 产品负责人(范围搜索)
   */
  private List<Long> principalInList;

  /**
   * 产品标签(模糊搜索)
   */
  private String label;

  /**
   * 产品标签 比较(eq)
   */
  private String labelEq;
  /**
   * 产品标签 比较(neq)
   */
  private String labelNeq;
  /**
   * 产品标签 比较(gt)
   */
  private String labelGt;
  /**
   * 产品标签 比较(gte)
   */
  private String labelGte;
  /**
   * 产品标签 比较(lt)
   */
  private String labelLt;
  /**
   * 产品标签 比较(lte)
   */
  private String labelLte;
  /**
   * 产品标签 比较(contains)
   */
  private String labelContains;
  /**
   * 产品标签 比较(notcontains)
   */
  private String labelNotcontains;
  /**
   * 产品标签 比较(startswith)
   */
  private String labelStartswith;
  /**
   * 产品标签 比较(endswith)
   */
  private String labelEndswith;
  /**
   * 产品标签 比较(isnull)
   */
  private Boolean labelIsnull;
  /**
   * 产品标签 比较(isnotnull)
   */
  private Boolean labelIsnotnull;

  /**
   * 产品标签(精确搜索)
   */
  private List<String> labelInList;

  /**
   * 信息一(模糊搜索)
   */
  private String info1;

  /**
   * 信息一 比较(eq)
   */
  private String info1Eq;
  /**
   * 信息一 比较(neq)
   */
  private String info1Neq;
  /**
   * 信息一 比较(gt)
   */
  private String info1Gt;
  /**
   * 信息一 比较(gte)
   */
  private String info1Gte;
  /**
   * 信息一 比较(lt)
   */
  private String info1Lt;
  /**
   * 信息一 比较(lte)
   */
  private String info1Lte;
  /**
   * 信息一 比较(contains)
   */
  private String info1Contains;
  /**
   * 信息一 比较(notcontains)
   */
  private String info1Notcontains;
  /**
   * 信息一 比较(startswith)
   */
  private String info1Startswith;
  /**
   * 信息一 比较(endswith)
   */
  private String info1Endswith;
  /**
   * 信息一 比较(isnull)
   */
  private Boolean info1Isnull;
  /**
   * 信息一 比较(isnotnull)
   */
  private Boolean info1Isnotnull;

  /**
   * 信息一(精确搜索)
   */
  private List<String> info1InList;

  /**
   * 信息二(模糊搜索)
   */
  private String info2;

  /**
   * 信息二 比较(eq)
   */
  private String info2Eq;
  /**
   * 信息二 比较(neq)
   */
  private String info2Neq;
  /**
   * 信息二 比较(gt)
   */
  private String info2Gt;
  /**
   * 信息二 比较(gte)
   */
  private String info2Gte;
  /**
   * 信息二 比较(lt)
   */
  private String info2Lt;
  /**
   * 信息二 比较(lte)
   */
  private String info2Lte;
  /**
   * 信息二 比较(contains)
   */
  private String info2Contains;
  /**
   * 信息二 比较(notcontains)
   */
  private String info2Notcontains;
  /**
   * 信息二 比较(startswith)
   */
  private String info2Startswith;
  /**
   * 信息二 比较(endswith)
   */
  private String info2Endswith;
  /**
   * 信息二 比较(isnull)
   */
  private Boolean info2Isnull;
  /**
   * 信息二 比较(isnotnull)
   */
  private Boolean info2Isnotnull;

  /**
   * 信息二(精确搜索)
   */
  private List<String> info2InList;

  /**
   * 电镀颜色(模糊搜索)
   */
  private String epColor;

  /**
   * 电镀颜色 比较(eq)
   */
  private String epColorEq;
  /**
   * 电镀颜色 比较(neq)
   */
  private String epColorNeq;
  /**
   * 电镀颜色 比较(gt)
   */
  private String epColorGt;
  /**
   * 电镀颜色 比较(gte)
   */
  private String epColorGte;
  /**
   * 电镀颜色 比较(lt)
   */
  private String epColorLt;
  /**
   * 电镀颜色 比较(lte)
   */
  private String epColorLte;
  /**
   * 电镀颜色 比较(contains)
   */
  private String epColorContains;
  /**
   * 电镀颜色 比较(notcontains)
   */
  private String epColorNotcontains;
  /**
   * 电镀颜色 比较(startswith)
   */
  private String epColorStartswith;
  /**
   * 电镀颜色 比较(endswith)
   */
  private String epColorEndswith;
  /**
   * 电镀颜色 比较(isnull)
   */
  private Boolean epColorIsnull;
  /**
   * 电镀颜色 比较(isnotnull)
   */
  private Boolean epColorIsnotnull;

  /**
   * 电镀颜色(精确搜索)
   */
  private List<String> epColorInList;

  /**
   * 采购员
   */
  private Long buyer;

  /**
   * 采购员 比较(eq)
   */
  private Long buyerEq;
  /**
   * 采购员 比较(neq)
   */
  private Long buyerNeq;
  /**
   * 采购员 比较(gt)
   */
  private Long buyerGt;
  /**
   * 采购员 比较(gte)
   */
  private Long buyerGte;
  /**
   * 采购员 比较(lt)
   */
  private Long buyerLt;
  /**
   * 采购员 比较(lte)
   */
  private Long buyerLte;
  /**
   * 采购员 比较(contains)
   */
  private Long buyerContains;
  /**
   * 采购员 比较(notcontains)
   */
  private Long buyerNotcontains;
  /**
   * 采购员 比较(startswith)
   */
  private Long buyerStartswith;
  /**
   * 采购员 比较(endswith)
   */
  private Long buyerEndswith;
  /**
   * 采购员 比较(isnull)
   */
  private Boolean buyerIsnull;
  /**
   * 采购员 比较(isnotnull)
   */
  private Boolean buyerIsnotnull;
  /**
   * 采购员的显示用户名 比较(eq)
   */
  private String buyerNameEq;
  /**
   * 采购员的显示用户名 比较(neq)
   */
  private String buyerNameNeq;
  /**
   * 采购员的显示用户名 比较(gt)
   */
  private String buyerNameGt;
  /**
   * 采购员的显示用户名 比较(gte)
   */
  private String buyerNameGte;
  /**
   * 采购员的显示用户名 比较(lt)
   */
  private String buyerNameLt;
  /**
   * 采购员的显示用户名 比较(lte)
   */
  private String buyerNameLte;
  /**
   * 采购员的显示用户名 比较(contains)
   */
  private String buyerNameContains;
  /**
   * 采购员的显示用户名 比较(notcontains)
   */
  private String buyerNameNotcontains;
  /**
   * 采购员的显示用户名 比较(startswith)
   */
  private String buyerNameStartswith;
  /**
   * 采购员的显示用户名 比较(endswith)
   */
  private String buyerNameEndswith;
  /**
   * 采购员的显示用户名 比较(isnull)
   */
  private Boolean buyerNameIsnull;
  /**
   * 采购员的显示用户名 比较(isnotnull)
   */
  private Boolean buyerNameIsnotnull;

  /**
   * 采购员(范围搜索)
   */
  private List<Long> buyerInList;

  /**
   * 产品类型
   */
  private String type;

  /**
   * 产品类型 比较(eq)
   */
  private String typeEq;
  /**
   * 产品类型 比较(neq)
   */
  private String typeNeq;
  /**
   * 产品类型 比较(gt)
   */
  private String typeGt;
  /**
   * 产品类型 比较(gte)
   */
  private String typeGte;
  /**
   * 产品类型 比较(lt)
   */
  private String typeLt;
  /**
   * 产品类型 比较(lte)
   */
  private String typeLte;
  /**
   * 产品类型 比较(contains)
   */
  private String typeContains;
  /**
   * 产品类型 比较(notcontains)
   */
  private String typeNotcontains;
  /**
   * 产品类型 比较(startswith)
   */
  private String typeStartswith;
  /**
   * 产品类型 比较(endswith)
   */
  private String typeEndswith;
  /**
   * 产品类型 比较(isnull)
   */
  private Boolean typeIsnull;
  /**
   * 产品类型 比较(isnotnull)
   */
  private Boolean typeIsnotnull;

  /**
   * 产品类型(精确搜索)
   */
  private List<String> typeInList;

  /**
   * 更新人
   */
  private Long lastUpdateUser;

  /**
   * 最小更新人
   */
  private Long lastUpdateUserMin;

  /**
   * 最大更新人
   */
  private Long lastUpdateUserMax;

  /**
   * 更新人 比较(eq)
   */
  private Long lastUpdateUserEq;
  /**
   * 更新人 比较(neq)
   */
  private Long lastUpdateUserNeq;
  /**
   * 更新人 比较(gt)
   */
  private Long lastUpdateUserGt;
  /**
   * 更新人 比较(gte)
   */
  private Long lastUpdateUserGte;
  /**
   * 更新人 比较(lt)
   */
  private Long lastUpdateUserLt;
  /**
   * 更新人 比较(lte)
   */
  private Long lastUpdateUserLte;
  /**
   * 更新人 比较(contains)
   */
  private Long lastUpdateUserContains;
  /**
   * 更新人 比较(notcontains)
   */
  private Long lastUpdateUserNotcontains;
  /**
   * 更新人 比较(startswith)
   */
  private Long lastUpdateUserStartswith;
  /**
   * 更新人 比较(endswith)
   */
  private Long lastUpdateUserEndswith;
  /**
   * 更新人 比较(isnull)
   */
  private Boolean lastUpdateUserIsnull;
  /**
   * 更新人 比较(isnotnull)
   */
  private Boolean lastUpdateUserIsnotnull;

  /**
   * 最早更新时间
   */
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  private Date lastUpdateTimeStart;

  /**
   * 最晚更新时间
   */
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  private Date lastUpdateTimeEnd;

  /**
   * 更新时间 比较(eq)
   */
  private Date lastUpdateTimeEq;
  /**
   * 更新时间 比较(neq)
   */
  private Date lastUpdateTimeNeq;
  /**
   * 更新时间 比较(gt)
   */
  private Date lastUpdateTimeGt;
  /**
   * 更新时间 比较(gte)
   */
  private Date lastUpdateTimeGte;
  /**
   * 更新时间 比较(lt)
   */
  private Date lastUpdateTimeLt;
  /**
   * 更新时间 比较(lte)
   */
  private Date lastUpdateTimeLte;
  /**
   * 更新时间 比较(contains)
   */
  private Date lastUpdateTimeContains;
  /**
   * 更新时间 比较(notcontains)
   */
  private Date lastUpdateTimeNotcontains;
  /**
   * 更新时间 比较(startswith)
   */
  private Date lastUpdateTimeStartswith;
  /**
   * 更新时间 比较(endswith)
   */
  private Date lastUpdateTimeEndswith;
  /**
   * 更新时间 比较(isnull)
   */
  private Boolean lastUpdateTimeIsnull;
  /**
   * 更新时间 比较(isnotnull)
   */
  private Boolean lastUpdateTimeIsnotnull;

  /**
   * 创建人
   */
  private Long createUser;

  /**
   * 最小创建人
   */
  private Long createUserMin;

  /**
   * 最大创建人
   */
  private Long createUserMax;

  /**
   * 创建人 比较(eq)
   */
  private Long createUserEq;
  /**
   * 创建人 比较(neq)
   */
  private Long createUserNeq;
  /**
   * 创建人 比较(gt)
   */
  private Long createUserGt;
  /**
   * 创建人 比较(gte)
   */
  private Long createUserGte;
  /**
   * 创建人 比较(lt)
   */
  private Long createUserLt;
  /**
   * 创建人 比较(lte)
   */
  private Long createUserLte;
  /**
   * 创建人 比较(contains)
   */
  private Long createUserContains;
  /**
   * 创建人 比较(notcontains)
   */
  private Long createUserNotcontains;
  /**
   * 创建人 比较(startswith)
   */
  private Long createUserStartswith;
  /**
   * 创建人 比较(endswith)
   */
  private Long createUserEndswith;
  /**
   * 创建人 比较(isnull)
   */
  private Boolean createUserIsnull;
  /**
   * 创建人 比较(isnotnull)
   */
  private Boolean createUserIsnotnull;

  /**
   * 最早创建时间
   */
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  private Date createTimeStart;

  /**
   * 最晚创建时间
   */
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  private Date createTimeEnd;

  /**
   * 创建时间 比较(eq)
   */
  private Date createTimeEq;
  /**
   * 创建时间 比较(neq)
   */
  private Date createTimeNeq;
  /**
   * 创建时间 比较(gt)
   */
  private Date createTimeGt;
  /**
   * 创建时间 比较(gte)
   */
  private Date createTimeGte;
  /**
   * 创建时间 比较(lt)
   */
  private Date createTimeLt;
  /**
   * 创建时间 比较(lte)
   */
  private Date createTimeLte;
  /**
   * 创建时间 比较(contains)
   */
  private Date createTimeContains;
  /**
   * 创建时间 比较(notcontains)
   */
  private Date createTimeNotcontains;
  /**
   * 创建时间 比较(startswith)
   */
  private Date createTimeStartswith;
  /**
   * 创建时间 比较(endswith)
   */
  private Date createTimeEndswith;
  /**
   * 创建时间 比较(isnull)
   */
  private Boolean createTimeIsnull;
  /**
   * 创建时间 比较(isnotnull)
   */
  private Boolean createTimeIsnotnull;

  /**
   * 编号
   */
  private Long id;

  /**
   * 最小编号
   */
  private Long idMin;

  /**
   * 最大编号
   */
  private Long idMax;

  /**
   * 编号 比较(eq)
   */
  private Long idEq;
  /**
   * 编号 比较(neq)
   */
  private Long idNeq;
  /**
   * 编号 比较(gt)
   */
  private Long idGt;
  /**
   * 编号 比较(gte)
   */
  private Long idGte;
  /**
   * 编号 比较(lt)
   */
  private Long idLt;
  /**
   * 编号 比较(lte)
   */
  private Long idLte;
  /**
   * 编号 比较(contains)
   */
  private Long idContains;
  /**
   * 编号 比较(notcontains)
   */
  private Long idNotcontains;
  /**
   * 编号 比较(startswith)
   */
  private Long idStartswith;
  /**
   * 编号 比较(endswith)
   */
  private Long idEndswith;
  /**
   * 编号 比较(isnull)
   */
  private Boolean idIsnull;
  /**
   * 编号 比较(isnotnull)
   */
  private Boolean idIsnotnull;

  /**
   * 关联产品数
   */
  private Integer relatedProductsNum;

  /**
   * 最小关联产品数
   */
  private Integer relatedProductsNumMin;

  /**
   * 最大关联产品数
   */
  private Integer relatedProductsNumMax;

  /**
   * 关联产品数 比较(eq)
   */
  private Integer relatedProductsNumEq;
  /**
   * 关联产品数 比较(neq)
   */
  private Integer relatedProductsNumNeq;
  /**
   * 关联产品数 比较(gt)
   */
  private Integer relatedProductsNumGt;
  /**
   * 关联产品数 比较(gte)
   */
  private Integer relatedProductsNumGte;
  /**
   * 关联产品数 比较(lt)
   */
  private Integer relatedProductsNumLt;
  /**
   * 关联产品数 比较(lte)
   */
  private Integer relatedProductsNumLte;
  /**
   * 关联产品数 比较(contains)
   */
  private Integer relatedProductsNumContains;
  /**
   * 关联产品数 比较(notcontains)
   */
  private Integer relatedProductsNumNotcontains;
  /**
   * 关联产品数 比较(startswith)
   */
  private Integer relatedProductsNumStartswith;
  /**
   * 关联产品数 比较(endswith)
   */
  private Integer relatedProductsNumEndswith;
  /**
   * 关联产品数 比较(isnull)
   */
  private Boolean relatedProductsNumIsnull;
  /**
   * 关联产品数 比较(isnotnull)
   */
  private Boolean relatedProductsNumIsnotnull;

  /**
   * 关联产品(模糊搜索)
   */
  private String associatedProduct;

  /**
   * 关联产品 比较(eq)
   */
  private String associatedProductEq;
  /**
   * 关联产品 比较(neq)
   */
  private String associatedProductNeq;
  /**
   * 关联产品 比较(gt)
   */
  private String associatedProductGt;
  /**
   * 关联产品 比较(gte)
   */
  private String associatedProductGte;
  /**
   * 关联产品 比较(lt)
   */
  private String associatedProductLt;
  /**
   * 关联产品 比较(lte)
   */
  private String associatedProductLte;
  /**
   * 关联产品 比较(contains)
   */
  private String associatedProductContains;
  /**
   * 关联产品 比较(notcontains)
   */
  private String associatedProductNotcontains;
  /**
   * 关联产品 比较(startswith)
   */
  private String associatedProductStartswith;
  /**
   * 关联产品 比较(endswith)
   */
  private String associatedProductEndswith;
  /**
   * 关联产品 比较(isnull)
   */
  private Boolean associatedProductIsnull;
  /**
   * 关联产品 比较(isnotnull)
   */
  private Boolean associatedProductIsnotnull;

  /**
   * 关联产品(精确搜索)
   */
  private List<String> associatedProductInList;

  /**
   * 表单名称
   */
  private String formName;

  /**
   * 工作流状态
   */
  private Integer wfStatus;
}
